﻿using System;
using System.Collections.Generic;

namespace DbManager.DataRequest
{
    public class DataRequestKomnata:IDataRequest
    {
        private string _name = string.Empty;
        private int _quantity;

        public void SetRequestParameters(Dictionary<string, string> parametersDictionary)
        {
            if (parametersDictionary.ContainsKey("name") && parametersDictionary.ContainsKey("quantity"))
            {
                _name = parametersDictionary["name"];
                _quantity = Int32.Parse(parametersDictionary["quantity"]);
            }
        }

        public string GetSelectQuery()
        {
            return "SELECT [Идентификатор], [Класс комнаты], [Количество мест] FROM [Комната] ORDER BY [Идентификатор]";
        }

        public string GetSelectQueryById()
        {
            throw new NotImplementedException();
        }

        public string GetInsertQuery()
        {
            if (string.IsNullOrEmpty(_name) || _quantity == 0)
            {
                return string.Empty;
            }
            return "INSERT INTO [Комната] ([Класс комнаты], [Количество мест]) VALUES ('" + _name + "', " + _quantity + ")";
        }

        public string GetUpdateQuery(int id)
        {
            if (string.IsNullOrEmpty(_name) || _quantity == 0 || id==0)
            {
                return string.Empty;
            }
            return "UPDATE [Комната] SET [Класс комнаты]='" + _name + "', [Количество мест]=" + _quantity + " WHERE [Идентификатор]=" + id;
        }

        public string GetDeleteQuery(int id)
        {
            if (id == 0)
            {
                return string.Empty;
            }
            return "DELETE FROM [Комната] WHERE [Идентификатор]=" + id;
        }
    }
}
